Protocolo IDENTD

Un protocolo de identificación, también llamado protocolo de autenticación de usuario, es un protocolo interactivo que permite a una parte probar a otra parte su identidad (autenticarse). A la parte que se identifica se le llama probador. A la parte que verifica la identidad se la llama verificador.​

Pueden ser de dos tipos: criptográficos o no criptográficos

La heurística de Fiat-Shamir provee una forma para convertir un protocolo de identificación criptográfico interactivo en un esquema de firma no interactiva.

Mecanismo general

En general el proceso de identificación sigue los siguientes pasos:

  1. El probador solicita acceso a un sistema.
  2. El verificador solicita al usuario que se autentique.
  3. El probador aporta las credenciales que le identifican y permiten verificar la autenticidad de la identificación.
  4. El verificador valida según sus reglas si las credenciales aportadas son suficientes para dar acceso al usuario o no.

Es en los dos últimos puntos donde difieren los distintos esquemas.

El Protocolo Ident está diseñado para funcionar como un demonio de servidor , en la computadora de un usuario , donde recibe solicitudes a un puerto TCP específico , generalmente 113. En la consulta, un cliente especifica un par de puertos TCP (local y remoto). port), codificados como decimales ASCII y separados por una coma (,). Luego, el servidor envía una respuesta que identifica el nombre de usuario del usuario que ejecuta el programa que usa el par especificado de puertos TCP, o especifica un error.

Suponga que el host A quiere saber el nombre del usuario que se está conectando a su puerto TCP 23 ( Telnet ) desde el puerto 6191 del cliente (host B). El host A abriría una conexión al servicio de identificación en el host B y emitiría el siguiente consulta:

6191, 23

Como las conexiones TCP generalmente usan un puerto local único (6191 en este caso), el host B puede identificar sin ambigüedades el programa que ha iniciado la conexión especificada al puerto 23 del host A, en caso de que exista. El host B luego emitiría una respuesta, identificando al usuario (“stjohns” en este ejemplo) que posee el programa que inició esta conexión y el nombre de su sistema operativo local :

6193, 23: USERID: UNIX: stjohns

Pero si resulta que no existe tal conexión en el host B, en su lugar, emitiría una respuesta de error:

6195, 23: ERROR: SIN USUARIO

Todos los mensajes de identificación deben estar delimitados por una secuencia de fin de línea que consta de los caracteres de retorno de carro y salto de línea (CR + LF).

Los hosts de acceso telefónico o los servidores de shell compartidos a menudo proporcionan una identificación para permitir que se rastree el abuso hasta usuarios específicos. En el caso de que se maneje el abuso en este host, la preocupación por confiar en el demonio ident es mayormente irrelevante. La suplantación del servicio y las preocupaciones de privacidad se pueden evitar proporcionando tokens criptográficamente fuertes variables en lugar de nombres de usuario reales.

Si los administradores del servicio al que los usuarios se conectan utilizando el host que proporciona la identificación deben manejar el abuso, entonces el servicio de identificación debe proporcionar información que identifique a cada usuario. Por lo general, es imposible para los administradores del servicio remoto saber si usuarios específicos se están conectando a través de un servidor confiable o desde una computadora que ellos mismos controlan. En el último caso, el servicio de identificación no proporciona información confiable.

Entradas relacionadas

Dejar un Comentario